from flask.ext.migrate import Migrate, MigrateCommand
from flask.ext.script import Manager
# 导入info包中__init__文件中的 app db 对象
from info import create_app, db, models

# flask对象引用传递,通过传递不懂的参数切换不同的配置模式
app = create_app('productionponfig')

# 修改运行方式
manager = Manager(app)
# 数据库迁移,数据库迁移
Migrate(app, db)
manager.add_command('db', MigrateCommand)

# 设置超级管理员
@manager.option('-n', '-name', dest='name')
@manager.option('-p', '-password', dest='password')
def createsuperuser(name, password):
    """创建超级管理员"""

    if not all([name, password]):
        print('参数不足')
        return

    from info.models import User
    user = User()
    user.mobile = name
    user.nick_name = name
    user.password = password
    user.is_admin = True  # 区别普通用户的字段

    db.session.add(user)


if __name__ == '__main__':
    manager.run()